home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Developer Essentials / MPW Interfaces & Libraries / AIncludes / GestaltEqu.a < prev    next >
Encoding:
Text File  |  1992-01-29  |  12.2 KB  |  283 lines  |  [TEXT/MPS ]

  1. ; Version: 2.97
  2. ; Created: Friday, October 20, 1989 at 9:21:08 PM
  3. ;
  4. ; File: GestaltEqu.a
  5. ;
  6. ; Assembler Interface to the Macintosh Libraries
  7. ; Copyright Apple Computer, Inc. 1988-1991
  8. ; All Rights Reserved
  9.  
  10.     IF &TYPE('__IncludingGestaltEqu__') = 'UNDEFINED' THEN
  11. __IncludingGestaltEqu__    SET    1
  12.  
  13. **************************
  14. * Gestalt error codes
  15. **************************
  16. gestaltUnknownErr EQU         -5550                     ; gestalt doesn't know the answer
  17. gestaltUndefSelectorErr EQU   -5551                     ; undefined code was passed to Gestalt
  18. gestaltDupSelectorErr EQU     -5552                     ; tried to add an entry that already existed
  19. gestaltLocationErr EQU        -5553                     ; gestalt function ptr wasn't in sysheap
  20.  
  21. **************************
  22. *                 Environment Selectors
  23. **************************
  24. gestaltVersion    EQU         'vers'                    ; gestalt version
  25.  
  26. gestaltAddressingModeAttr EQU 'addr'                    ; addressing mode attributes
  27. gestalt32BitAddressing EQU    0                         ; using 32-bit addressing mode
  28. gestalt32BitSysZone EQU       1                         ; 32-bit compatible system zone
  29. gestalt32BitCapable EQU       2                         ; machine is 32-bit mode capable
  30.  
  31. gestaltAliasMgrAttr EQU       'alis'                    ; Alias Mgr Attributes
  32. gestaltAliasMgrPresent EQU    0                         ; True if the Alias Mgr is present
  33. gestaltAliasMgrSupportsRemoteAppletalk    EQU    1        ; True if the Alias Mgr knows about Remote Appletalk
  34. gestaltAppleTalkVersion EQU   'atlk'                    ; AppleTalk version
  35.  
  36. gestaltAUXVersion EQU         'a/ux'                    ; a/ux version, if present
  37.  
  38. gestaltConnMgrAttr            EQU        'conn'            ; connection mgr attributes
  39. gestaltConnMgrPresent        EQU        0                
  40. gestaltConnMgrCMSearchFix    EQU        1                ; do we have fix to CMAddSearch?
  41. gestaltConnMgrErrorString    EQU        2
  42. gestaltConnMgrMultiAsyncIO    EQU        3
  43.  
  44. gestaltCRMAttr                EQU        'crm '            ; comm resource mgr attributes
  45. gestaltCRMPresent            EQU        0                
  46. gestaltCRMPersistentFix        EQU        1                ; fix for persistent connections present
  47. gestaltCRMToolRsrcCalls        EQU        2
  48.  
  49. gestaltCTBVersion            EQU        'ctbv'            ; CommToolbox version if present
  50.  
  51. gestaltDBAccessMgrAttr        EQU        'dbac'            ; Database Access Mgr attributes
  52. gestaltDBAccessMgrPresent    EQU        0                 ; True if the Database Access Mgr present
  53.  
  54. gestaltDITLExtAttr            EQU        'ditl'            ; AppenDITL, etc. calls from CTB
  55. gestaltDITLExtPresent        EQU        0                 ; True if calls are present
  56.  
  57. gestaltEasyAccessAttr        EQU     'easy'            ; Easy Access attributes
  58. gestaltEasyAccessOff        EQU        0                 ; if Easy Access present, but off (no icon)
  59. gestaltEasyAccessOn            EQU        1                 ; if Easy Access "On"
  60. gestaltEasyAccessSticky        EQU        2                 ; if Easy Access "Sticky"
  61. gestaltEasyAccessLocked        EQU        3                 ; if Easy Access "Locked"
  62.  
  63. gestaltEditionMgrAttr        EQU     'edtn'            ; Edition Mgr attributes
  64. gestaltEditionMgrPresent    EQU        0                 ; True if Edition Mgr present
  65.  
  66. gestaltAppleEventsAttr        EQU        'evnt'            ; Apple Events attributes
  67. gestaltAppleEventsPresent    EQU        0                 ; True if Apple Events present
  68.  
  69. gestaltFindFolderAttr        EQU      'fold'            ; FindFolder attributes
  70. gestaltFindFolderPresent    EQU        0                 ; True if FindFolder present
  71.  
  72. gestaltFontMgrAttr            EQU        'font'            ; Font Mgr attributes
  73. gestaltOutlineFonts            EQU       0                 ; True if OutLine Fonts are supported
  74.  
  75. gestaltStandardFileAttr        EQU        'stdf'            ; Standard File attributes
  76. gestaltStandardFile58        EQU       0                 ; True if selectors 5-8 (StandardPutFile-CustomGetFile) are supported
  77.  
  78. gestaltFPUType                EQU     'fpu '            ; FPU type
  79. gestaltNoFPU                 EQU     0                 ; no FPU
  80. gestalt68881                  EQU     1                 ; 68881 FPU
  81. gestalt68882                  EQU     2                 ; 68882 FPU
  82. gestalt68040FPU                EQU     3                 ; 68040 built-in FPU
  83.  
  84. gestaltFSAttr                EQU        'fs  '            ; file system attributes
  85. gestaltFullExtFSDispatching    EQU        0                ; has really cool new HFSDispatch dispatcher
  86. gestaltHasFSSpecCalls        EQU        1                ; has FSSpec calls
  87. gestaltHasFileSystemManager EQU        2                ; has a file system manager
  88.  
  89. gestaltFXfrMgrAttr            EQU        'fxfr'            ; file transfer manager attributes
  90. gestaltFXfrMgrPresent        EQU        0                
  91. gestaltFXfrMgrMultiFile        EQU        1                ; supports FTSend and FTReceive
  92. gestaltFXfrMgrErrorString    EQU        2
  93.  
  94. gestaltHardwareAttr            EQU       'hdwr'            ; hardware attributes
  95. gestaltHasVIA1                EQU     0                 ; VIA1 exists
  96. gestaltHasVIA2                EQU     1                 ; VIA2 exists
  97. gestaltHasASC                EQU     3                 ; Apple Sound chip exists
  98. gestaltHasSCC                EQU     4                 ; SCC exists
  99. gestaltHasSCSI                EQU     7                 ; SCSI exists
  100. gestaltHasSoftPowerOff        EQU        19                ; Capable of software power off
  101. gestaltHasSCSI961            EQU        21                ; 53C96 SCSI controller on internal bus    <50>
  102. gestaltHasSCSI962            EQU        22                ; 53C96 SCSI controller on external bus    <50>
  103. gestaltHasUniversalROM        EQU        24                ; Do we gots a Universal ROM?            <49>
  104.  
  105. gestaltHelpMgrAttr            EQU        'help'            ; Help Mgr Attributes
  106. gestaltHelpMgrPresent        EQU     0                 ; true if help mgr is present
  107.  
  108. gestaltKeyboardType            EQU       'kbd '            ; keyboard type
  109. gestaltMacKbd                EQU     1
  110. gestaltMacAndPad            EQU     2
  111. gestaltMacPlusKbd            EQU     3
  112. gestaltExtADBKbd            EQU     4
  113. gestaltStdADBKbd            EQU     5
  114. gestaltPrtblADBKbd            EQU        6
  115. gestaltPrtblISOKbd            EQU        7
  116. gestaltStdISOADBKbd            EQU       8
  117. gestaltExtISOADBKbd            EQU       9
  118. gestaltADBKbdII                EQU        10
  119. gestaltADBISOKbdII            EQU        11
  120. gestaltPwrBookADBKbd        EQU        12                ; <49>
  121. gestaltPwrBookISOADBKbd        EQU        13                ; <49>
  122.  
  123. gestaltLowMemorySize        EQU      'lmem'            ; size of low-memory area
  124.  
  125. gestaltLogicalRAMSize        EQU     'lram'            ; logical RAM size
  126.  
  127. gestaltMiscAttr                EQU     'misc'            ; miscellaneous information
  128. gestaltScrollingThrottle    EQU        0                 ; true if scrolling throttle on
  129. gestaltSquareMenuBar        EQU        2                ; true if menu bar is square
  130.  
  131. gestaltMMUType                EQU     'mmu '            ; MMU type
  132. gestaltNoMMU                EQU     0                 ; no MMU
  133. gestaltAMU                    EQU     1                 ; address management unit
  134. gestalt68851                EQU     2                 ; 68851 PMMU
  135. gestalt68030MMU                EQU     3                 ; 68030 built-in MMU
  136. gestalt68040MMU                EQU     4                 ; 68040 built-in MMU
  137.  
  138. gestaltNotificationMgrAttr    EQU        'nmgr'           ; notification manager attributes
  139. gestaltNotificationPresent    EQU        0                ; notification manager exists
  140.  
  141. gestaltSerialAttr            EQU        'ser '            ; serial attributes                            <26>
  142. gestaltHasGPIaToDCDa        EQU        0                ; GPIa connected to DCDa                    <26>
  143. gestaltHasGPIaToRTxCa        EQU        1                ; GPIa connected to RTxCa clock input        <26>
  144. gestaltHasGPIbToDCDb        EQU        2                ; GPIb connected to DCDb                    <26>
  145.  
  146. gestaltNuBusConnectors        EQU        'sltc'            ; bitmap of slots with NuBus connectors        <26>
  147.  
  148. gestaltOSAttr                EQU     'os  '            ; O/S attributes
  149. gestaltSysZoneGrowable        EQU        0                 ; system heap is growable
  150. gestaltLaunchCanReturn        EQU        1                 ; can return from launch
  151. gestaltLaunchFullFileSpec    EQU     2                 ; can launch from full file spec
  152. gestaltLaunchControl        EQU      3                 ; launch control support available
  153. gestaltTempMemSupport        EQU     4                 ; temp memory support
  154. gestaltRealTempMemory        EQU     5                 ; temp memory handles are real
  155. gestaltTempMemTracked        EQU     6                 ; temporary memory handles are tracked
  156. gestaltIPCSupport            EQU     7                 ; IPC support is present
  157. gestaltSysDebuggerSupport    EQU     8                 ; system debugger support is present
  158.  
  159. gestaltOSTable                EQU        'ostt'            ; OS trap table base
  160. gestaltToolboxTable            EQU        'tbtt'            ; Toolbox trap table base
  161. gestaltExtToolboxTable        EQU        'xttt'            ; Extended Toolbox trap table base
  162.  
  163. gestaltLogicalPageSize        EQU        'pgsz'            ; logical page size
  164.  
  165. gestaltPowerMgrAttr            EQU       'powr'            ; power manager attributes
  166. gestaltPMgrExists            EQU     0
  167. gestaltPMgrCPUIdle            EQU        1
  168. gestaltPMgrSCC                EQU     2
  169. gestaltPMgrSound            EQU     3
  170.  
  171. gestaltPPCToolboxAttr        EQU     'ppc '            ; PPC toolbox attributes
  172. ;
  173. ; PPC will return the combination of following bit fields.
  174. ; e.g. gestaltPPCSupportsRealTime +gestaltPPCSupportsIncomming + gestaltPPCSupportsOutGoing
  175. ;indicates PPC is cuurently is only supports real time delivery
  176. ;and both icoming and outgoing network sessions are allowed.
  177. ;By default local real time delivery is supported as long as PPCInit has been called.
  178. ;
  179. gestaltPPCToolboxPresent            EQU        $0000   ; PPC Toolbox is present  Requires PPCInit to be called
  180. gestaltPPCSupportsRealTime            EQU        $1000   ; PPC Supports real-time deliveryy
  181. gestaltPPCSupportsStoreAndForward    EQU        $2000   ; PPC Store and Forward  delivery
  182. gestaltPPCSupportsDontCare            EQU        $4000   ; PPC Supports  Specification of Don't care
  183. gestaltPPCSupportsIncomming            EQU        $0001   ; PPC will deny incomming network requests
  184. gestaltPPCSupportsOutGoing            EQU        $0002   ; PPC will deny outgoing network requests
  185.  
  186. gestaltProcessorType        EQU      'proc'            ; processor type
  187. gestalt68000                EQU     1
  188. gestalt68010                EQU     2
  189. gestalt68020                EQU     3
  190. gestalt68030                EQU     4
  191. gestalt68040                EQU     5
  192.  
  193. gestaltParityAttr            EQU     'prty'            ; parity attributes
  194. gestaltHasParityCapability    EQU        0                ; has ability to check parity
  195. gestaltParityEnabled        EQU      1                 ; parity checking enabled
  196.  
  197. gestaltQuickdrawVersion        EQU        'qd  '            ; quickdraw version
  198. gestaltOriginalQD            EQU     $000              ; original 1-bit QD                 <3.2>
  199. gestalt8BitQD                EQU     $100              ; 8-bit color QD                    <3.2>
  200. gestalt32BitQD                EQU     $200              ; 32-bit color QD                    <3.2>
  201. gestalt32BitQD11            EQU     $210              ; 32-bit color QDv1.1                <31>
  202. gestalt32BitQD12            EQU     $220              ; 32-bit color QDv1.2                <31>
  203. gestalt32BitQD13            EQU     $230              ; 32-bit color QDv1.3                <31>
  204.  
  205. gestaltQuickdrawFeatures    EQU        'qdrw'            ; quickdraw features                    <37>
  206. gestaltHasColor                EQU        0                ; color quickdraw present                <37>
  207. gestaltHasDeepGWorlds        EQU        1                ; GWorlds can be deeper than 1-bit        <37>
  208. gestaltHasDirectPixMaps        EQU        2                ; PixMaps can be direct (16 or 32 bit)    <37>
  209. gestaltHasGrayishTextOr        EQU        3                ; supports text mode grayishTextOr        <37>
  210.  
  211. gestaltPhysicalRAMSize        EQU        'ram '            ; physical RAM size
  212.  
  213. gestaltPopupAttr            EQU        'pop!'            ; popup cdef attributes
  214. gestaltPopupPresent            EQU        0
  215.  
  216. gestaltResourceMgrAttr        EQU        'rsrc'            ; Resource Mgr attributes
  217. gestaltPartialRsrcs            EQU       0                 ; True if partial resources exist
  218.  
  219. gestaltScriptMgrVersion        EQU        'scri'            ; Script Manager version number     <08/05/89 pke>
  220. gestaltScriptCount            EQU        'scr#'            ; number of active script systems    <08/05/89 pke>
  221.  
  222. gestaltSoundAttr            EQU        'snd '            ; sound attributes
  223. gestaltStereoCapability        EQU        0                 ; sound hardware has stereo capability
  224. gestaltStereoMixing            EQU       1                 ; stereo mixing on external speaker
  225. gestaltSoundIOMgrPresent    EQU        3                ; The Sound I/O Manager is present
  226. gestaltBuiltInSoundInput    EQU        4                ; built-in Sound Input hardware is present
  227. gestaltHasSoundInputDevice     EQU        5                ; Sound Input device available
  228.  
  229. gestaltStdNBPAttr            EQU        'nlup'            ; standard nbp attributes
  230. gestaltStdNBPPresent        EQU        0
  231.  
  232. gestaltTextEditVersion        EQU        'te  '            ; TextEdit version number
  233. gestaltTE1                    EQU     1                 ; TextEdit in MacIIci ROM
  234. gestaltTE2                    EQU     2                 ; TextEdit with 6.0.4 Script Systems on MacIIci (Script bug fixes for MacIIci) <8Aug89smb>
  235. gestaltTE3                    EQU     3                 ; TextEdit with 6.0.4 Script Systems all but MacIIci
  236. gestaltTE4                    EQU     4                 ; TextEdit in Big Bang
  237. gestaltTE5                    EQU     5                 ; TextWidthHook available in TextEdit
  238.  
  239. gestaltTermMgrAttr            EQU        'term'            ; terminal mgr attributes
  240. gestaltTermMgrPresent        EQU        0                
  241. gestaltTermMgrErrorString    EQU        2
  242.  
  243. gestaltTimeMgrVersion        EQU     'tmgr'            ; time manager attributes
  244. gestaltStandardTimeMgr EQU    1                         ; standard time mgr is present
  245. gestaltRevisedTimeMgr EQU     2                         ; revised time mgr is present
  246. gestaltExtendedTimeMgr EQU    3                         ; extended time mgr is present
  247.  
  248. gestaltVMAttr     EQU         'vm  '                    ; virtual memory attributes
  249. gestaltVMPresent  EQU         0                         ; virtual memory is present
  250.  
  251. **************************
  252. *                 Info-only   Selectors
  253. **************************
  254. gestaltMachineType EQU        'mach'                    ; machine type
  255. gestaltClassic    EQU         1
  256. gestaltMacXL      EQU         2
  257. gestaltMac512KE   EQU         3
  258. gestaltMacPlus    EQU         4
  259. gestaltMacSE      EQU         5
  260. gestaltMacII      EQU         6
  261. gestaltMacIIx     EQU         7
  262. gestaltMacIIcx    EQU         8
  263. gestaltMacSE30    EQU         9
  264. gestaltPortable   EQU         10
  265. gestaltMacIIci    EQU         11
  266. gestaltMacIIfx    EQU         13
  267. gestaltMacClassic    EQU        17                ; <29>
  268. gestaltMacIIsi    EQU            18                ; <29>
  269. gestaltMacLC    EQU            19                ; <29>
  270. gestaltQuadra900    EQU        20                ; <49>
  271. gestaltPowerBook170    EQU        21                ; <49>
  272. gestaltQuadra700    EQU        22                ; <49>
  273. gestaltClassicII    EQU        23                ; <49>
  274. gestaltPowerBook100    EQU        24                ; <49>
  275. gestaltPowerBook140    EQU        25                ; <49>
  276.  
  277. gestaltMachineIcon            EQU        'micn'            ; machine icon
  278.  
  279. gestaltROMSize    EQU         'rom '                    ; ROM size
  280. gestaltROMVersion EQU         'romv'                    ; ROM version
  281. gestaltSystemVersion EQU      'sysv'                    ; system version
  282.  
  283.     ENDIF    ; ...already included